/*
 * @Description:服务器
 * 
 * @Author: rendc
 * 
 * @Date: 2025-03-17 10:13:32
 * 
 * @LastEditors: rendc
 * 
 * @LastEditTime: 2025-03-17 14:05:05
 */

import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class TcpServer {
  public static void main(String[] args) throws Exception {
    // 创建服务器对象 指定程序端口
    ServerSocket server = new ServerSocket(8888);
    System.out.println("服务器：" + server);
    // 等待客户端连接 - 程序阻塞
    Socket client = server.accept();
    System.out.println("客户端连接成功：" + client);
    // 创建IO流对象
    InputStream is = client.getInputStream();
    OutputStream os = client.getOutputStream();
    // 服务器端接收客户端发送的内容
    byte[] b = new byte[1024];
    int length = is.read(b);
    if (length != -1) {
      // 输出读到的内容 - 解析数组
      System.out.println(new String(b, 0, length));
    }
    // 服务器端收到客户端的数据之后给客户端发送消息
    // "hello,client,我是Server"
    String msg = "hello,client,我是Server";
    os.write(msg.getBytes());
    // 关闭资源
    is.close();
    os.close();
    client.close();
    server.close();
  }
}